package aupdg.logic.analysis;

import aupdg.data.model.Node;
import java.util.List;
import java.util.Map;

/**
 * Contract for detecting information leaks in an LDG.
 *
 * @author AA and CJ
 */
public interface InformationLeakAnalysis {

    /**
     * Returns all the detected information leaks in a Map, where each key node
     * is the originator and each value, list of nodes is the whole chain that
     * produces such a leak.
     *
     * @return
     */
    public Map<Node, List<List<Node>>> detectInformationLeaks();
}
